Backup procedures for computers are well known. Backup procedures are performed in order to provide a copy of the data stored on a computer or an associated storage device, so that the data can later be restored in the event that the original data is accidentally or maliciously lost.
As those skilled in the art will appreciate, data can be accidentally lost through computer hard disk failures, power losses, fires, floods, earthquakes, and a variety of other unfortunate events. Data can be maliciously lost through erasure, viruses, tampering, and other such intentional events. There is simply no way known at the present to prevent such accidental and malicious loss of data.
However, actual harm caused by the loss of data can be mitigated with comparatively little cost and inconvenience by implementing backup procedures to prepare for this eventuality. The use of backup procedures is general far less expensive and inconvenient than the consequences of irretrievably losing the data. One of the consequences of irretrievably losing data may be the need to reconstruct the data.
Reconstruction of the data is likely to be an undesirably costly and time consuming process. Indeed, many times the data simply cannot be reconstructed. The original sources of the data may no longer exist or may be untraceable. Important information is often permanently lost with severe financial consequences.
Backing up data is merely the process of making an extra copy of the data, so that if the original data is lost or corrupted, the extra copy may be used in its place. This redundancy decreases the likelihood that a single incident or malicious event can make the data permanently unavailable.
The backed up data is copied to another storage device. This backup storage device typically has removable media, so that the backed up data can then be easily moved to a remote location for safe keeping. Thus, even in the event of a catastrophe, such as a fire or earthquake, at the location of the original data, the backed up data is not likely to be affected.
Various different systems for performing backups are known. Backups can be made to network attached storage (NAS) devices, storage area networks (SANs) and a variety of other storage devices, including tape drives. A NAS device is a storage device that is dedicated solely to file sharing. NAS devices typically communicate using TCP/IP over an Ethernet connection. Although multiple storage devices can be used, NAS systems frequently use a single storage device. A NAS device can add storage capacity to a server without disruption of the system. That is, since a NAS device is not an integral part of a server, there is no need to shut down the system when adding a NAS device. A NAS device can be located anywhere that is desired within a LAN.
A SAN is a network of shared data storage devices that communicate using Fibre Channel over a SCSI interface. Thus, a SAN has several separate storage devices. A SAN provides simplified storage management, more efficient access to stored data, scalability, and easier backup.
Large sets of disk drives that are bundled together for use in file serving and/or backups are known as filers. Filers communicate with in a proprietary manner. Communication is a proprietary manner can cause some problems in the backup process, as discussed in further detail below.
An advantage of backing up to a NAS device, a SAN, or some other disk based storage system rather than backing up to a tape drive is the speed of the process. Since backups can be performed much more rapidly to disk based storage system, there is less disruption to the server, as well as to the network in general, than when a backup is being made to a tape drive. Thus, it is possible to perform a backup during the day when the server is busy.
Backups may also be performed tape. However, in order to expedite the backup process (and thus mitigate any undesirable impact to routine computer operations), backup are often performed to a disk based storage system such as a NAS or SANs system and then subsequently transferred to tape.
In any event, it is necessary to identify the storage system to which a backup is to be made in order to perform the backup. However, discovering a filer is rather difficult. A filer is not a smart device that gives you a detailed profile of its functional capabilities.
Connecting a large storage device to a system or network is only one step in the installation process. The more important step is to ensure that operating systems, applications and other devices can communicate efficiently with the large storage device. Because filers are so proprietary in the way that they operate and communicate, the applications and operating systems have to be specifically setup and supported in order to properly communicate with a filer. To help facilitate this communication a standard known as Network Data Management Protocol (NDMP) has been adopted. Thus, an NDMP filer is a filer that can communicate through an NDMP protocol, which is a predefined specified protocol that is specifically for the transfer of data. NDMP does not automatically communicate information regarding the functionalities of a storage device. Neither does NDMP automatically take advantage of such functionalities.
The NDMP initiative was launched to create an open standard protocol for network-based backup for network- attached storage. The protocol allows backup and network-attached file server vendors to focus investment on functionality instead of excessive porting, and gives users an unprecedented level of choice and interoperability. The objective of this protocol is to help address the problem of backing up networks of heterogeneous file servers, including dedicated file servers or filers, with any of several backup applications. Prior to the existence of the protocol, backup vendors would port to and track many different platforms and operating system releases, with filers presenting a special challenge because of the desire to have them be backup-ready (eliminating the need to specially install backup client software). Dedicated file server vendors tried to make sure that all the newest, most important backup applications were available for their current and new releases.
Although the NDMP protocol creates a protocol to facilitate communication with filers, there is still an issue of defining the functionality of a specific filer. As such, although the prior art has recognized, to a limited extent, the problem of recognizing and taking advantage of the capabilities or functionality of storage devices such as filers, the proposed solutions have, to date, been ineffective in providing a satisfactory remedy. Therefore, it is desirable to provide an apparatus and method for discovering data storage devices, particularly large data storage devices such as filers, for use in backup.